package com.etoak.common.web.context;

import com.etoak.common.jwt.JwtUtil;
import com.etoak.common.web.utils.ServletUtil;
import org.springframework.http.HttpHeaders;

import java.util.Map;

public class LoginUserContext {
    public static final String USER_ID="id";
    public static final String USERNAME="username";

    /**
     * 获取登录用户的id
     *
     */
    public static String getUserId(){
        return getClaims().get(USER_ID).toString();
    }
    /**
     * 获取登录用户的用户名
     *
     */
    public static String getUsername(){
        return getClaims().get(USERNAME).toString();
    }

    /**
     * 获取jwt中的自定义的payload信息
     *
     */
    public static Map<String,Object> getClaims(){
        String token = ServletUtil.getRequest().getHeader(HttpHeaders.AUTHORIZATION);
        return JwtUtil.parse(token);
    }
}
